home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / a_man / cat1 / rwhod.z / rwhod
Encoding:
Text File  |  2002-10-03  |  6.2 KB  |  133 lines

  1.  
  2.  
  3.  
  4. RRRRWWWWHHHHOOOODDDD((((1111MMMM))))                                                            RRRRWWWWHHHHOOOODDDD((((1111MMMM))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      rwhod - system status server
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      ////uuuussssrrrr////eeeettttcccc////rrrrwwwwhhhhoooodddd [ ----mmmm [ _t_t_l ] ]
  13.  
  14. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  15.      _R_w_h_o_d is the server which maintains the database used by the _r_w_h_o(1C) and
  16.      _r_u_p_t_i_m_e(1C) programs.  Its operation is predicated on the ability to
  17.      _b_r_o_a_d_c_a_s_t or _m_u_l_t_i_c_a_s_t messages on a network.  _R_w_h_o_d is started at system
  18.      initialization if the configuration flag _r_w_h_o_d is set ``on'' with
  19.      _c_h_k_c_o_n_f_i_g(1M).  Site-dependent options and arguments to _r_w_h_o_d belong in
  20.      the file /_e_t_c/_c_o_n_f_i_g/_r_w_h_o_d._o_p_t_i_o_n_s.
  21.  
  22.      _R_w_h_o_d operates as both a producer and consumer of status information.  As
  23.      a producer of information it periodically queries the state of the system
  24.      and constructs status messages which are broadcast or multicast on a
  25.      network.  As a consumer of information, it listens for other _r_w_h_o_d
  26.      servers' status messages, validating them, then recording them in a
  27.      collection of files located in the directory /_u_s_r/_s_p_o_o_l/_r_w_h_o.
  28.  
  29.      The server transmits and receives messages at the port indicated in the
  30.      ``rwho'' service specification; see _s_e_r_v_i_c_e_s(4).  The messages sent and
  31.      received, are defined in <protocols/rwhod.h>:
  32.  
  33.      struct    outmp {
  34.           char out_line[8]; /* tty name */
  35.           char out_name[8]; /* user id */
  36.           long out_time;    /* time on */
  37.      };
  38.  
  39.      struct    whod {
  40.           char wd_vers;     /* protocol version # */
  41.           char wd_type;     /* packet type: WHODTYPE_STATUS */
  42.           char wd_pad[2];
  43.           int  wd_sendtime; /* time stamp by sender */
  44.           int  wd_recvtime; /* time stamp applied by receiver */
  45.           char wd_hostname[32];/* host's name */
  46.           int  wd_loadav[3];/* load average as in uptime */
  47.           int  wd_boottime; /* time system booted */
  48.           struct            whoent {
  49.                struct outmp we_utmp;/* active tty info */
  50.                int we_idle; /* tty idle time */
  51.           } wd_we[1024 / sizeof (struct whoent)];
  52.      };
  53.  
  54.  
  55.      All fields are converted to network byte order prior to transmission.
  56.      The load averages represent smoothed CPU loads over the 5, 10, and 15
  57.      minute intervals prior to a server's transmission; they are multiplied by
  58.      100 for representation in an integer.
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. RRRRWWWWHHHHOOOODDDD((((1111MMMM))))                                                            RRRRWWWWHHHHOOOODDDD((((1111MMMM))))
  71.  
  72.  
  73.  
  74.      The host name included is that returned by the _g_e_t_h_o_s_t_n_a_m_e(2) system
  75.      call, with any trailing domain name omitted.  The array at the end of the
  76.      message contains information about the users logged in to the sending
  77.      machine.  This information includes the contents of the _u_t_m_p(4) entry for
  78.      each non-idle terminal line and a value indicating the time in seconds
  79.      since a character was last received on the terminal line.
  80.  
  81.      Messages received by the _r_w_h_o server are discarded unless they originated
  82.      at an _r_w_h_o server's port.  In addition, if the host's name, as specified
  83.      in the message, contains any unprintable ASCII characters, the message is
  84.      discarded.  Valid messages received by _r_w_h_o_d are placed in files named
  85.      whod._h_o_s_t_n_a_m_e in the directory /usr/spool/rwho.  These files contain only
  86.      the most recent message, in the format described above.
  87.  
  88.      Status messages are generated approximately once every 3 minutes.  _R_w_h_o_d
  89.      performs an _n_l_i_s_t(3) on /unix every 30 minutes to guard against the
  90.      possibility that this file is not the system image currently operating.
  91.  
  92.      _R_h_w_o_d recognizes the following options:
  93.  
  94.      -m   causes _r_w_h_o_d to use IP multicast (instead of broadcast or unicast)
  95.           on all multicast-capable interfaces (excluding the loopback
  96.           interface).  The multicast reports are sent with a time-to-live of
  97.           1, to prevent forwarding beyond the directly-connected subnet(s).
  98.  
  99.      -m _t_t_l
  100.           causes _r_w_h_o_d to send IP multicast datagrams with a time-to-live of
  101.           _t_t_l, via the default multicast interface only rather than all
  102.           interfaces.  _t_t_l must be between 0 and 32.  Note that "-m 1" is
  103.           different than "-m", in that "-m 1" specifies transmission on one
  104.           interface only.  This allows the information to be relayed between
  105.           networks.
  106.  
  107.      When "-m" is used without a _t_t_l argument, the program accepts multicast
  108.      _r_w_h_o_d reports from all multicast-capable interfaces.  If a _t_t_l argument
  109.      is given, it accepts multicast reports from only one interface, the one
  110.      on which reports are sent (which may be controlled via the host's routing
  111.      table).  Regardless of the "-m" option, the program accepts broadcast or
  112.      unicast reports from all interfaces.  Thus, this program will hear the
  113.      reports of old, non-multicasting _r_w_h_o_d's, but, if multicasting is used,
  114.      those old _r_w_h_o_d's won't hear the reports generated by this program.
  115.  
  116. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  117.      rwho(1C), ruptime(1C), rup(1C)
  118.  
  119. BBBBUUUUGGGGSSSS
  120.      Status information should be sent only upon request rather than
  121.      continuously.  People often interpret the server dying or network
  122.      communication failures as a machine going down.
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.